package com.yinhai.message.manage.msgmg.bpo;

import com.yinhai.core.common.api.base.IPage;
import com.yinhai.message.manage.msgmg.vo.MessageDetailVo;
import com.yinhai.message.manage.msgmg.vo.MessageFileVo;
import com.yinhai.message.manage.msgmg.vo.MessageVo;

import java.util.Date;
import java.util.List;

/**
 * @author aolei 2017年3月28日17:14:44
 *         <p>
 *         消息管理Bpo,提供消息管理相关服务
 */
public interface IMessageMgBpo {

    /**
     * 根据发送人员id,发送系统id,通知标题，开始时间，结束时间 查询 消息信息
     *
     * @param sendUserId
     * @param sendSyspathId
     * @param title
     * @param startTime
     * @param endTime
     * @return
     */
    IPage<MessageVo> queryMessagesByParam(String sendUserId, String sendSyspathId, String title, Date startTime, Date endTime, int start, int limit, String gridId);

    /**
     * 根据 messageId查询 message的详细信息
     *
     * @param messageId
     * @param start
     * @param limit
     * @param gridId
     * @return
     */
    IPage<MessageDetailVo> queryMessageDetailsByMsgId(String messageId, int start, int limit, String gridId);

    /**
     * 根据消息id获取消息体内容
     *
     * @param messageId
     * @return
     */
    String queryMessageContextByMessageId(String messageId);


    /**
     * 获取所有的人员userid username
     */
    List<MessageDetailVo> getAlllUserInfo();

    /**
     * 根据messageId查询附件信息
     * @param messageId
     * @return
     */
    List<MessageFileVo> queryMessageFilesByMessageId(String messageId);

}
